"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const redis = require("redis");
const Logger_1 = require("./Logger");
class RedisUtil {
    static init() {
        this.client = redis.createClient(this.Redis_Port, this.Redis_Host, this.Redis_Config);
        // ready：Redis的Connection事件之一，当与redis服务器连接成功后会触发这个事件，此时表示已经准备好接收命令，
        // 当这个事件触发之前client命令会存在队列中，当一切准备就绪后按顺序调用
        this.client.on("ready", () => {
            Logger_1.Logger.log("redis ready");
        });
        // connect：Redis的Connection事件之一，在不设置client.options.no_ready_check的情况下，
        // 客户端触发connect同时它会发出ready，如果设置了client.options.no_ready_check，当这个stream被连接时会触发connect，
        this.client.on("connect", () => {
            //设置单个value
            this.client.set("testhao", "jhao", this.setCallBack);
            this.client.get("testhao", this.getCallBack);
            //设置object
            this.client.hmset("testduovalue", { "a": 1, "b": "sjdfjd" }, this.setCallBack);
            this.client.hgetall("testduovalue", this.getCallBack);
        });
    }
    static setCallBack(err, reply) {
        if (err) {
            Logger_1.Logger.warn("Redis set error", err);
            return;
        }
        Logger_1.Logger.log("设置redis suc", reply);
    }
    static getCallBack(err, reply) {
        if (err) {
            Logger_1.Logger.warn("Redis get error", err);
            return;
        }
        Logger_1.Logger.log("Redis get suc", reply);
    }
}
exports.RedisUtil = RedisUtil;
RedisUtil.Redis_Host = "127.0.0.1"; //
RedisUtil.Redis_Port = 6379; //redis的默认端口：6379
RedisUtil.Redis_Config = { "auth_pass": "666666" };
